Hybrid data bus for achieving deterministic performance for non-deterministic network bus type interfaces

ABSTRACT

The hybrid data bus includes client nodes and an IEEE-1394b-based network operably associated with those client nodes. At least one of the client nodes is a legacy-based client node that utilizes a non-deterministic network bus type for network interfacing. An IEEE-1394b-based network is operably associated with the client nodes via at least one network interface bridge (NIB). The IEEE-1394b-based network provides a deterministic data passing capability between the legacy-based client node and at least one other of the client nodes.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] This invention relates to establishing data communication between client nodes over a network and more particularly to establishing deterministic network performance between client nodes which use normally nondeterministic (legacy) bus types.

[0003] 2. Description of the Related Art

[0004] Modern system applications increasingly require the capabilities of a high-speed data bus network that not only has plentiful bandwidth, but can also provide a deterministic quality of service in providing inter-node communication. Some of the most popular shared bandwidth high-speed data buses such as Ethernet and Fibre Channel (Arbitrated Loop), etc., though providing much-improved bandwidths over earlier buses, do not inherently provide time-deterministic performance as part of their protocol.

[0005] Attempts to achieve time-deterministic data delivery over such networks have given rise to techniques currently coming to market such as introducing one or several (as necessary) time-deterministic buffer switches between all nodes of a network (e.g., Next Generation System's Copperhead™ deterministic Ethernet crossbar switch), and creating deterministic point-to-point multi-hop connections between pairs of communicating client nodes routed through one or more crossbar switches, while retaining the original data bus protocol (e.g., Ethernet) on all links of the network. Such an approach can involve considerable expense, as with the Copperhead™ Ethernet switches being priced at about $10,000 each. A network of ten such switches with 8 ports each (totaling $100,000) are required to provide connectivity between 60 nodes. All that expense is incurred trying to provide determinism to the Ethernet protocol.

[0006] An approach is needed for allowing multiple high speed buses, whether inherently non-deterministic in nature or not, to achieve deterministic messaging capability and to co-exist and reside on a single primary vehicle network type. The present subject invention provides time-deterministic capability between nodes supported by otherwise non-deterministic network types in a simpler and lower cost manner than other techniques currently coming to market.

[0007] The subject invention provides deterministic messaging capability between nodes which interface with and communicate over normally non-deterministic legacy data buses (e.g., Ethernet, Universal Serial Bus (USB) or Fibre Channel Arbitrated Loop). This is accomplished by merging the time-deterministic capabilities of a shared bandwidth, multi-node, deterministic bus (viz., IEEE-1394b) with dedicated (un-contended) point-to-point connections for the first and last leg connections to the otherwise non-deterministic legacy node interfaces.

[0008] Some software methods have been developed for partitioning such functions across an arbitrary network and connecting them together with a communications protocol. One such method and standard is known as the Scalable Coherent Interface, and is defined by the open system standard IEEE-1596.

SUMMARY OF THE INVENTION

[0009] In a broad aspect, the hybrid data bus of the present invention includes client nodes and an IEEE-1394b-based network operably associated with those client nodes. At least one of the client nodes is a legacy-based client node that utilizes a non-deterministic network bus type for network interfacing. An IEEE-1394b-based network is operably associated with the client nodes via at least one network interface bridge (NIB). The IEEE-1394b-based network provides a deterministic data passing capability between the legacy-based client node and at least one other of the client nodes.

[0010] The hybrid data bus of the present invention may be implemented in a hub-based topology including hub-based subnetworks interconnected by IEEE-1394b hub-hub interconnects. In such an instance at least one of the client nodes is a legacy-based client node that utilizes a normally non-deterministic bus type hub—client node interconnect for connection to an associated network interface bridge (NIB) of a hub. A deterministic data passing capability is provided between the legacy-based client node and the other client nodes. The present invention may alternatively, or in addition, be implemented in a hub-less network topology.

[0011] In either a hub-based or hub-less version, the present invention offers significant cost advantages over current or prior art offerings in industry by leveraging the inherent deterministic nature of the IEEE-1394b databus protocol. Savings of approximately twenty times over current industry offerings for similar capability are readily possible with the current invention, as described below.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012]FIG. 1 is a schematic illustration of a first embodiment of the hybrid data bus of the present invention, showing its utilization in hub-based network topology.

[0013]FIG. 2 is a schematic illustration of a second embodiment of the hybrid data bus of the present invention, showing its utilization in a hub-less network topology.

[0014]FIG. 2A is an enlarged portion of FIG. 2, showing details of the client node.

[0015]FIG. 3 is a schematic illustration of a third embodiment of the hybrid data bus of the present invention, showing its utilization in a mixed combination of hub-based and hub-less network topology subnetworks.

DETAILED DESCRIPTION OF THE INVENTION

[0016] Referring to the drawings and the characters of reference marked thereon, FIG. 1 illustrates a first preferred embodiment of the hybrid data bus of the present invention, designated generally as 10. The system 10 illustrated in FIG. 1 utilizes a hub-based network topology. The system 10 includes a number of hub-based subnetworks, designated generally as 12, 12′, 12″, . . . 12 ^(n). Each hub-based subnetwork includes at least one client node, or as shown in this figure, a number of client nodes 14, 14′, 14″, . . . 14 ^(n) and a hub 16. The hub 16 includes at least one, or as shown in this figure, a number of co-located network interface bridges (NIBs) 18, 18′, 18″, . . . 18 ^(n). The hub 16 may include one or more fan-out ports 19, 19′, 19″, . . . 19 ^(n). Hub—client node interconnects 20, 20′, 20″, . . . 20 ^(n) connect the client nodes 14, 14′, 14″, . . . 14 ^(n) to their respective NIBs 18, 18′, 18″, . . . 18.

[0017] IEEE-1394b hub-hub interconnects 22, 22′, 22″, . . . 22 ^(n) connect a hub 16 of a hub-based subnetwork to the hub, e.g. 16′, of an adjacent hub-based subnetwork, e.g. 12′.

[0018] Each NIB 18 has the capability to provide a bridging function between a client node 14 equipped with a non-deterministic type legacy signal interface and the deterministic high-speed data bus (HSDB) network of the present invention, either directly or through a network interface card (NIC) 23 bridge to the HSDB network.

[0019] In the embodiment depicted in FIG. 1, a hub 16 is constructed of a deterministic HSDB-capable-port interfacing to a hub-hub interconnect 22 through a NIC 23, with data being interfaced between that NIC 23 and each NIB 18 via internal hub circuitry. In this case, all NIB's in a single hub share one common node presence on the HSDB network.

[0020] Alternatively (figure not provided), a hub may be constructed such that each NIB is connected internally within the hub in a daisy chain fashion, or in a tree topology branching out from a multiple-port physical layer signal regeneration node in a typical IEEE-1394-based implementation. In this latter case, each NIB presents its own independent node presence on the HSDB network, thereby increasing total node count on the HSDB network.

[0021] The fan-out ports 19, 19′, 19″, . . . 19 ^(n) provide additional branch-out locations for client nodes which are already IEEE-1394b bus capable.

[0022] At least one of the client nodes 14, 14′, 14″, . . . 14 ^(n) is a legacy-based client node that uses a normally non-deterministic bus type hub—client node interconnect 20 for connection to its associated NIB 18. Those of the client nodes 14, 14′, 14″, . . . 14 ^(n) that are not legacy-based, but are instead directly IEEE-1394b HSDB-capable, need not interface through a NIB, but instead interface directly with the IEEE-1394b HSDB network through their own resident NIC. This resident NIC may be directly connected to any access port on the HSDB network including any of the fan-out ports 19. Generally, most if not all of the client nodes are legacy-based. The normally non-deterministic bus type hub—client node interconnect 20 may be, for example, an Ethernet class bus type, a USB class bus type, or a Fibre Channel class bus type.

[0023] Preferably, each NIB 18 serves a single one of the legacy-based client nodes 14. However, it is possible that a NIB 18 serves two or more of such legacy-based client nodes 14. A rule-based code is preferably provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between the client nodes. The rule-based code manages the allocation of a suitable fraction of the bandwidth of the deterministic HSDB to each of the hub-client node interconnects 20, 20′, 20″, . . . 20 ^(n). The total allocation to all client nodes may be up to 100%. The rule-based code may use an asynchronous method for accessing the IEEE-1394b HSDB-based network using its fairness protocol in supporting service to the hub-client node interconnects 20, 20′, 20″, . . . 20 ^(n). The ruled-based code manages the maximum message size employed by each of the client nodes. This limits the maximum time that the next access to the HSDB is granted to another node, thereby facilitating low latency bus access.

[0024] The ruled-based code provides for only a single access to the IEEE-1394b-based network until all the client nodes have had an opportunity for their respective access. Using bandwidth allocation (in the isochronous mode) or fairness protocol (in the asynchronous mode), maximum bus access latencies (and therefore determinism) may thereby be guaranteed for all nodes. For the isochronous access method, maximum latency for all nodes is approximately the isochronous cycle frame time, which is nominally 125 microseconds. For the asynchronous bus access method, the maximum latency is the product of the maximum message length for each node (in microseconds) times the number of nodes on, or seeking access to, the network.

[0025] The rule-based code may implement a time-based method for allowing cyclic access to the IEEE-1394b-based network. The timing provides the deterministic repeating interval of access to the IEEE-1394b-based network. Alternatively, the ruled-based code may maximize determinism by assigning explicit time-slots to respective client nodes within an allocated repeated time interval. As shown in FIG. 1 the subnetworks 12 are serially connected. However, it is understood that they may be connected in a tree-type hierarchy.

[0026] Referring now to FIGS. 2 and 2A, a second preferred embodiment of the hybrid data bus is illustrated, designated generally as 30, which utilizes a hub-less topology. The hybrid data bus 30 includes a number of client nodes 32. At least one NIB 34 is co-located and operably associated with a respective client node 32. At least one of the client nodes 32 is a legacy-based client node. IEEE-1394b client node—client node interconnects 36 connect a client node 32 to an adjacent client node 32 through a NIB 34. A legacy bus port 38 is associated with a respective client node 32. A wraparound interconnect 40 is positioned between the NIB 34 and its associated legacy bus port 38 for operably connecting the NIB 34 to the associated legacy port 38. The legacy bus port receives data formatted in accordance with the protocol inherent to the legacy-based client node The hub-less topology offers an advantage in network architectures of minimizing the quantity of individual equipment boxes required to implement a network connectivity by eliminating the need for hubs, as well as total associated interconnecting wiring.

[0027] Referring now to FIG. 3 it can be seen that the principles discussed above with respect to a hub-based topology and a hub-less topology can be extended to provide a hybrid data bus, designated generally as 40, having a mixed combination of hub-based subnetworks 42 and hub-less network topology subnetworks 44. The hub-based subnetwork 42, includes at least one hub-based subnetwork client node 46, a hub 48 having at least one NIB and at least one hub—client node interconnect 50. This hub-based subnetwork 42 is as described above with respect to FIG. 1. Each hubless subnetwork 44 includes hubless subnetwork client nodes 52, the client nodes being as described above with respect to FIG. 2. IEEE-1394b subnetwork—subnetwork interconnects 54 provide connections for the respective adjacent subnetworks.

[0028] As discussed above, in the Description of the Related Art, the present invention offers substantial cost savings over prior art approaches to creating determinism between client nodes which employ a normally non-deterministic data bus type. For instance, attempts to achieve time-deterministic data delivery over such networks have given rise to techniques currently coming to market such as introducing one or several (as necessary) time-deterministic buffer switches between all nodes of a network (e.g., Next Generation System's Copperhead™ deterministic Ethernet crossbar switch), and creating deterministic point-to-point multi-hop connections between pairs of communicating client nodes routed through one or more crossbar switches, while retaining the original databus protocol (e.g., Ethernet) on all links of the network. Such an approach can involve considerable expense, as with the Copperhead™ Ethernet switches being priced at about $10,000 each. Ten such switches with 8 ports each (totaling $100,000) are required to provide connectivity between 60 nodes. All that expense is incurred trying to provide determinism to the Ethernet protocol.

[0029] Instead, this invention makes use of the inherently deterministic capability of the IEEE-1394b high speed data bus to distribute signals between all nodes on the network, providing only an Ethernet conversion at each end. Such hubs would typically cost much less, consisting of essentially two to six IEEE-1394 branching ports (totaling approximately $50 for a copper network) plus six or eight Ethernet ports (at $30 for each port), plus minimal datablock conversion buffers, totaling on the order of $500 each for an entire hybrid hub. This would add up to a total of only about $5,000 to connect the same 60-node network (a 20× reduction over the aforementioned approach). A hub-based configuration type similar to FIG. 1 would be used to implement the equivalent of the Copperhead network.

[0030] Thus, while the preferred embodiments of the devices and methods have been described in reference to the environment in which they were developed, they are merely illustrative of the principles of the inventions. Other embodiments and configurations may be devised without departing from the spirit of the inventions and the scope of the appended claims. 

1. A hybrid data bus, comprising: a) a plurality of client nodes, at least one of said plurality of client nodes being a legacy-based client node that utilizes a non-deterministic network bus type for network interfacing; and, b) an IEEE-1394b-based network operably associated with said plurality of client nodes via at least one network interface bridge (NIB), said IEEE-1394b-based network for providing deterministic data passing capability between said legacy-based client node and at least one other of said plurality of client nodes.
 2. The hybrid data bus of claim 1, wherein said at least one NIB comprises a plurality of co-located NIB's, said plurality of co-located NIB's comprising a hub.
 3. The hybrid data bus of claim 1, wherein said at least one NIB comprises a plurality of hubs, each hub comprising a plurality of co-located NIB's, said hubs being connected by IEEE-1394b interconnects, thus providing a hub-based network topology.
 4. The hybrid data bus of claim 1, wherein said at least one NIB comprises a single NIB, co-located with said legacy-based client node, thus providing a hub-less network topology.
 5. The hybrid data bus of claim 1, wherein said non-deterministic network bus type comprises an Ethernet class bus type.
 6. The hybrid data bus of claim 1, wherein said non-deterministic network bus type comprises a Fibre Channel class bus type.
 7. The hybrid data bus of claim 1, wherein said non-deterministic network bus type comprises a Universal Serial Bus (USB) type.
 8. The hybrid data bus of claim 1, wherein each NIB serves a single one of said legacy-based client nodes.
 9. The hybrid data bus of claim 1, wherein each NIB serves a plurality of said legacy-based client nodes.
 10. The hybrid data bus of claim 1, wherein each NIB provides a legacy-based interface to its associated legacy-based client node.
 11. The hybrid data bus of claim 1, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes.
 12. The hybrid data bus of claim 1, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes, said rule-based code for managing the allocation of a suitable fraction of the bandwidth of said IEEE-1394b-based network.
 13. The hybrid data bus of claim 1, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes, said rule-based code for managing the allocation of a suitable fraction of the bandwidth of said IEEE-1394b-based network, said allocation being less than 100%.
 14. The hybrid data bus of claim 1, wherein a rule-based code utilizes the isochronous method for accessing said IEEE-1394b-based network.
 15. The hybrid data bus of claim 1, wherein a rule-based code utilizes the isochronous method for accessing said IEEE-1394b-based network, the total bandwidth allocated to said client nodes being limited to 80% of the bandwidth of said IEEE-1394b-based network.
 16. The hybrid data bus of claim 1, wherein a rule-based code utilizes the asychronous method for accessing said IEEE-1394b-based network, using the fairness protocol.
 17. The hybrid data bus of claim 1, wherein a ruled-based code manages the maximum message size employed by each of said client nodes.
 18. The hybrid data bus of claim 1, wherein a ruled-based code provides for only a single access to said IEEE-1394b-based network until all said client nodes have had an opportunity for their respective access.
 19. The hybrid data bus of claim 1, wherein a ruled-based code implements a time-based method for allowing cyclic access to said IEEE-1394b-based network, said timing providing the deterministic repeating interval of access to said IEEE-1394b-based network.
 20. The hybrid data bus of claim 1, wherein a ruled-based code maximizes determinism by assigning explicit time-slots to respective client nodes within an allocated repeated time interval.
 21. A hybrid data bus having a hub-based network topology, comprising: a) a plurality of hub-based subnetworks, each hub-based subnetwork comprising: i) at least one client node; ii) a hub, said hub comprising at least one network interface bridge (NIB); and, iii) at least one hub—client node interconnect, said hub—client node interconnect for connecting a client node through an associated NIB; and, b) a plurality of IEEE-1394b hub-hub interconnects, each of said hub-hub interconnects for connecting a hub of a hub-based subnetwork to the hub of an adjacent hub-based subnetwork, wherein said at least one client node is a legacy-based client node that utilizes a normally non-deterministic bus type hub—client node interconnect for connection to its associated NIB, thus providing deterministic data passing capability between said legacy-based client node and at least one other of the plurality of client nodes.
 22. The hybrid data bus of claim 21, further comprising a NIC connected to a IEEE-1394b hub-hub interconnect for providing an interface to said at least one NIB and presenting a single node presence on the hybrid data bus in representing at least one said NIB within said hub.
 23. The hybrid data bus of claim 21, further comprising fan-out ports for accommodating client nodes that are directly IEEE 1394b capable.
 24. The hybrid data bus of claim 21, wherein said normally non-deterministic bus type hub—client node comprises an Ethernet class bus type.
 25. The hybrid data bus of claim 21, wherein said normally non-deterministic bus type hub—client node interconnect comprises a Fibre Channel class bus type.
 26. The hybrid data bus of claim 21, wherein said normally non-deterministic bus type hub—client node interconnect comprises a Universal Serial Bus (USB) type.
 27. The hybrid data bus of claim 21, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes.
 28. The hybrid data bus of claim 21, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes, said rule-based code for managing the allocation of a suitable fraction of the bandwidth of said IEEE-1394b-based network.
 29. The hybrid data bus of claim 21, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes, said rule-based code for managing the allocation of a suitable fraction of the bandwidth of said IEEE-1394b-based network, said allocation being less than 100%.
 30. The hybrid data bus of claim 21, wherein a rule-based code utilizes the isochronous method for accessing said IEEE-1394b-based network.
 31. The hybrid data bus of claim 21, wherein a rule-based code utilizes the isochronous method for accessing said IEEE-1394b-based network, the total bandwidth allocated to said client nodes being limited to 80% of the bandwidth of said IEEE-1394b-based network.
 32. The hybrid data bus of claim 21, wherein a rule-based code utilizes the asychronous method for accessing said IEEE-1394b-based network, using the fairness protocol.
 33. The hybrid data bus of claim 21, wherein a ruled-based code manages the maximum message size employed by each of said client nodes.
 34. The hybrid data bus of claim 21, wherein a ruled-based code provides for only a single access to said IEEE-1394b-based network until all said client nodes have had an opportunity for their respective access.
 35. The hybrid data bus of claim 21, wherein a ruled-based code implements a time-based method for allowing cyclic access to said IEEE-1394b-based network, said timing providing the deterministic repeating interval of access to said IEEE-1394b-based network.
 36. The hybrid data bus of claim 21, wherein a ruled-based code maximizes determinism by assigning explicit time-slots to respective client nodes within an allocated repeated time interval.
 37. The hybrid data bus of claim 21, wherein said hub-based subnetworks are serially connected.
 38. The hybrid data bus of claim 21, wherein said hub-based subnetworks comprise a tree-type hierarchy.
 39. A hybrid data bus having a hub-less network topology, comprising: a) a plurality of client nodes; b) at least one network interface bridge (NIB) being operably associated with a respective one of said plurality of client nodes, said respective one of said plurality of client nodes being a legacy-based client node; c) at least one IEEE-1394b client node—client node interconnect for connecting a client node to an adjacent client node through said at least one NIB; d) at least one legacy bus port associated with a respective client node; and, e) at least one wraparound interconnect between said at least one NIB and its associated legacy bus port for operably connecting said NIB to said associated legacy bus port, said at least one legacy bus port for receiving data formatted in accordance with the protocol inherent to said legacy-based client node, wherein said legacy-based client node utilizes a normally non-deterministic bus type client node—client node interconnect, thus providing deterministic data passing capability of the hybrid data bus between said legacy-based client node and at least one other of said plurality of client nodes.
 40. The hybrid data bus of claim 39, wherein said normally non-deterministic bus type hub—client node comprises an Ethernet class bus type.
 41. The hybrid data bus of claim 39, wherein said normally non-deterministic bus type hub—client node interconnect comprises a Fibre Channel class bus type.
 42. The hybrid data bus of claim 39, wherein said normally non-deterministic bus type hub—client node interconnect comprises a Universal Serial Bus (USB) type.
 43. The hybrid data bus of claim 39, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes.
 44. The hybrid data bus of claim 39, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes, said rule-based code for managing the allocation of a suitable fraction of the bandwidth of said IEEE-1394b-based network.
 45. The hybrid data bus of claim 39, wherein a rule-based code is provided by an Application Program Interface (API) bus manager software program to provide deterministic access and data passing performance between said plurality of client nodes, said rule-based code for managing the allocation of a suitable fraction of the bandwidth of said IEEE-1394b-based network, said allocation being less than 100%.
 46. The hybrid data bus of claim 39, wherein a rule-based code utilizes the isochronous method for accessing said IEEE-1394b-based network.
 47. The hybrid data bus of claim 39, wherein a rule-based code utilizes the isochronous method for accessing said IEEE-1394b-based network, the total bandwidth allocated to said client nodes being limited to 80% of the bandwidth of said IEEE-1394b-based network.
 48. The hybrid data bus of claim 39, wherein a rule-based code utilizes the asychronous method for accessing said IEEE-1394b-based network, using the fairness protocol.
 49. The hybrid data bus of claim 39, wherein a ruled-based code manages the maximum message size employed by each of said client nodes.
 50. The hybrid data bus of claim 39, wherein a ruled-based code provides for only a single access to said IEEE-1394b-based network until all said client nodes have had an opportunity for their respective access.
 51. The hybrid data bus of claim 39, wherein a ruled-based code implements a time-based method for allowing cyclic access to said IEEE-1394b-based network, said timing providing the deterministic repeating interval of access to said IEEE-1394b-based network.
 52. The hybrid data bus of claim 39, wherein a ruled-based code maximizes determinism by assigning explicit time-slots to respective client nodes within an allocated repeated time interval.
 53. A hybrid data bus having a mixed combination of hub-based and hub-less network topology subnetworks, comprising: a) at least one hub-based subnetwork, comprising: i) at least one hub-based subnetwork client node; ii) a hub, said hub comprising at least one network interface bridge (NIB); and, iii) at least one hub—client node interconnect, said hub—client node interconnect for connecting a client node through an associated NIB; b) at least one hubless subnetwork, comprising a plurality of hubless subnetwork client nodes; and, c) at least one of IEEE-1394b subnetwork—subnetwork interconnect for connecting respective adjacent subnetworks, wherein said at least one hub-based subnetwork client node or one of said plurality of hubless subnetwork client nodes utilizes a normally non-deterministic bus type client node interconnect to the remainder of the hybrid data bus, thus providing deterministic data passing capability of the hybrid data bus between said legacy-based client node and at least one other of said plurality of client nodes. 